[IA64] Idle domain doesn't need to save and restore fph
authorawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Mon, 27 Nov 2006 17:10:57 +0000 (10:10 -0700)
committerawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Mon, 27 Nov 2006 17:10:57 +0000 (10:10 -0700)
Signed-off-by: Anthony Xu <anthony.xu@intel.com>
xen/arch/ia64/xen/domain.c

index 3dede16491effdc93907be67563a3bae4a06fc71..11bd8b9fcf5d8094e3d20af04a8fd93726a0e54f 100644 (file)
@@ -164,8 +164,11 @@ void context_switch(struct vcpu *prev, struct vcpu *next)
 
     local_irq_save(spsr);
 
-    __ia64_save_fpu(prev->arch._thread.fph);
-    __ia64_load_fpu(next->arch._thread.fph);
+    if (!is_idle_domain(prev->domain)) 
+        __ia64_save_fpu(prev->arch._thread.fph);
+    if (!is_idle_domain(next->domain)) 
+        __ia64_load_fpu(next->arch._thread.fph);
+
     if (VMX_DOMAIN(prev)) {
        vmx_save_state(prev);
        if (!VMX_DOMAIN(next)) {